home *** CD-ROM | disk | FTP | other *** search
/ Champak 132 / Vol 132.iso / games / nameless.swf / scripts / DefineSprite_1794 / frame_1 / DoAction.as
Text File  |  2011-06-09  |  5KB  |  224 lines

  1. if(!setVars)
  2. {
  3.    var moveSpeed = 3;
  4.    var addSpeed = 0.5;
  5.    var gravity = 0;
  6.    var maxGravity = 8;
  7.    var airSpeed = 0.5;
  8.    var active = false;
  9.    var xTar = 0;
  10.    xscale = _xscale;
  11.    var attacking = false;
  12.    var hitSound = new Sound();
  13.    var die = false;
  14.    hitSound.attachSound("punch5");
  15.    var removeNum = 100;
  16.    var melt = false;
  17.    var startX = _X;
  18.    var startY = _Y;
  19.    var health = 3;
  20.    var setVars = true;
  21. }
  22. stop();
  23. var getFrame = function()
  24. {
  25.    if(hit == false)
  26.    {
  27.       if(die == true)
  28.       {
  29.          frame = "die";
  30.       }
  31.       else if(melt == true)
  32.       {
  33.          frame = "melt";
  34.       }
  35.       else if(attacking == false or falling == true)
  36.       {
  37.          frame = "stand";
  38.       }
  39.       else if(attacking == true)
  40.       {
  41.          frame = "attack";
  42.       }
  43.    }
  44.    else
  45.    {
  46.       frame = "hit";
  47.    }
  48.    gotoAndStop(frame);
  49. };
  50. var onEnterFrame = function()
  51. {
  52.    _root.checkVis(this);
  53.    if(_root.remake == true)
  54.    {
  55.       die = false;
  56.       melt = false;
  57.       removeNum = 100;
  58.       _X = startX;
  59.       _Y = startY;
  60.       active = false;
  61.       _visible = true;
  62.       _alpha = 100;
  63.    }
  64.    if(_root.pauseMode == false)
  65.    {
  66.       if(active == true)
  67.       {
  68.          if(die == false && melt == false)
  69.          {
  70.             if(_root.candy.hitTest(hitter))
  71.             {
  72.                if(_root.candy.dir == "left")
  73.                {
  74.                   _root.candy.dir = "right";
  75.                }
  76.                else
  77.                {
  78.                   _root.candy.dir = "left";
  79.                }
  80.                hitSound.start();
  81.                if(health > 0)
  82.                {
  83.                   hit = true;
  84.                }
  85.                else
  86.                {
  87.                   die = true;
  88.                }
  89.             }
  90.             else if(_root.cm.g.hit.hitTest(hitter))
  91.             {
  92.                hitSound.start();
  93.                if(health > 0)
  94.                {
  95.                   hit = true;
  96.                }
  97.                else
  98.                {
  99.                   die = true;
  100.                }
  101.             }
  102.             else if(_root.cm.g.sparkle.hitTest(hitter))
  103.             {
  104.                melt = true;
  105.             }
  106.             if(attacking == false)
  107.             {
  108.                if(_root.cm._x > _X)
  109.                {
  110.                   _xscale = - xscale;
  111.                }
  112.                else if(_root.cm._x < _X)
  113.                {
  114.                   _xscale = xscale;
  115.                }
  116.             }
  117.             if(bound.hitTest(_root.cm))
  118.             {
  119.                num = random(50);
  120.                if(num == 1 && attacking == false && falling == false && bull.ready == true)
  121.                {
  122.                   attacking = true;
  123.                }
  124.             }
  125.          }
  126.          else
  127.          {
  128.             if(removeNum < 0)
  129.             {
  130.                if(_alpha > 0)
  131.                {
  132.                   _alpha = _alpha - 1;
  133.                }
  134.                else
  135.                {
  136.                   _visible = false;
  137.                }
  138.             }
  139.             else
  140.             {
  141.                removeNum -= 1;
  142.             }
  143.             if(xTar > 0)
  144.             {
  145.                xTar -= addSpeed;
  146.             }
  147.             else if(xTar < 0)
  148.             {
  149.                xTar += addSpeed;
  150.             }
  151.          }
  152.          if(xTar > moveSpeed)
  153.          {
  154.             xTar = moveSpeed;
  155.          }
  156.          else if(xTar < - moveSpeed)
  157.          {
  158.             xTar = - moveSpeed;
  159.          }
  160.          if(_root.bound.hitTest(_X,_Y + 1,true))
  161.          {
  162.             falling = false;
  163.          }
  164.          else
  165.          {
  166.             falling = true;
  167.          }
  168.          if(falling == true)
  169.          {
  170.             grav = 0;
  171.             switched = false;
  172.             i = 0;
  173.             while(i < gravity)
  174.             {
  175.                if(switched == false)
  176.                {
  177.                   if(_root.bound.hitTest(_X,_Y + i,true))
  178.                   {
  179.                      switched = true;
  180.                   }
  181.                   else
  182.                   {
  183.                      grav = i;
  184.                   }
  185.                }
  186.                i++;
  187.             }
  188.             _Y = _Y + i;
  189.             if(gravity < maxGravity)
  190.             {
  191.                gravity += airSpeed;
  192.             }
  193.          }
  194.          else
  195.          {
  196.             gravity = 0;
  197.          }
  198.          while(_root.bound.hitTest(_X,_Y - 0.5,true))
  199.          {
  200.             _Y = _Y - 0.5;
  201.          }
  202.          _X = _X + xTar;
  203.          if((die == true or melt == true) && g._currentframe == g._totalframes)
  204.          {
  205.             g.stop();
  206.          }
  207.          else
  208.          {
  209.             g.play();
  210.          }
  211.       }
  212.       if(_root.cam.hitTest(this))
  213.       {
  214.          active = true;
  215.       }
  216.    }
  217.    else
  218.    {
  219.       stop();
  220.       g.stop();
  221.    }
  222.    getFrame();
  223. };
  224.